Increase the amount of data written to a pipe in a test
authorStephen Dolan <sdolan@janestreet.com>
Mon, 30 Jun 2025 12:58:36 +0000 (13:58 +0100)
committerStéphane Glondu <glondu@debian.org>
Fri, 9 Jan 2026 07:54:31 +0000 (08:54 +0100)
On some OSes, you need to write more than 1MB of data to a pipe
before writes block, and read more than 64k to unblock them.

Bug-Debian: https://bugs.debian.org/1107773
Origin: https://github.com/ocaml/ocaml/pull/14116

Gbp-Pq: Name Increase-the-amount-of-data-written-to-a-pipe-in-a-test.patch

testsuite/tests/lib-channels/close_during_flush.ml

index 39ef2fbc21db9e09fd2ea71ec63ffe29d8b89a8a..08e6f6e01b182b4c6f2c90bfda15e4942e475a1f 100644 (file)
@@ -11,7 +11,7 @@ let () =
   Unix.set_nonblock wr;
   let buf = Bytes.make 1000 '!' in
   begin match
-    for i = 1 to 1000 do
+    for i = 1 to 10_000 do
       ignore (Unix.write wr buf 0 1000)
     done
   with
@@ -25,7 +25,7 @@ let () =
   output ch buf 0 1000;
   let alarm_handler _ =
     (* clear some space *)
-    Unix.read rd (Bytes.make 10_000 '?') 0 10_000 |> ignore;
+    Unix.read rd (Bytes.make 100_000 '?') 0 100_000 |> ignore;
     close_out ch
   in
   Sys.signal Sys.sigalrm (Signal_handle alarm_handler) |> ignore;